package wiBase.baseObject;

import java.util.ArrayList;

import wiBase.WiObject;

public class WiNetwork extends WiObject {

    private ArrayList<WiObject> _lstEvents = null;	// All of events relate with the Nodes or Packets.
    private ArrayList<WiObject> _lstNodes = null;	// All of Nodes in the WiNetwork.
    private ArrayList<WiObject> _lstPackets = null;// All of Packets in the WiNetwork.
    private long _time = -1;
    private long _endTime = -1;

    public WiNetwork(long time) {
	this._time = time;
	_lstNodes = new ArrayList<>();
	_lstPackets = new ArrayList<>();
	_lstEvents = new ArrayList<>();
    }

    public ArrayList<WiObject> getLstEvents() {
	return _lstEvents;
    }

    public void setLstEvents(ArrayList<WiObject> LstEvents) {
	this._lstEvents = new ArrayList<>(LstEvents);
    }

    public ArrayList<WiObject> getLstNodes() {
	return _lstNodes;
    }

    public void setLstNodes(ArrayList<WiObject> LstNodes) {
	this._lstNodes = new ArrayList<>(LstNodes);
    }

    public ArrayList<WiObject> getLstPackets() {
	return _lstPackets;
    }

    public void setLstPackets(ArrayList<WiObject> LstPackets) {
	this._lstPackets = new ArrayList<>(LstPackets);
    }

    public long get_time() {
	return _time;
    }

    public void setTime(long time) {
	this._time = time;
    }

    public long getEndTime() {
	return _endTime;
    }

    public void setEndTime(long _endTime) {
	this._endTime = _endTime;
    }

    
    
    public void saveNetwork(long time, ArrayList<WiObject> listNodes, ArrayList<WiObject> listPackets, ArrayList<WiObject> listEvent) {
	this._time = time;

	this._lstNodes = new ArrayList<>(listNodes);
	this._lstPackets = new ArrayList<>(listPackets);
	this._lstEvents = new ArrayList<>(listEvent);
    }
}
